<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h</title>
  </head>
  <body>
    <h1>File: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/uapi/asm/bootparam.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_noref.html#_X0FTTV9YODZfQk9PVFBBUkFNX0hfMA__"><span class="b">_ASM_X86_BOOTPARAM_H</span></a>
<a name="2" /><span class="True">       2:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X0FTTV9YODZfQk9PVFBBUkFNX0hfMA__"><span class="b">_ASM_X86_BOOTPARAM_H</span></a>
<a name="3" /><span class="True">       3:</span> 
<a name="4" /><span class="True">       4:</span> <span class="k">/* setup_data types */</span>
<a name="5" /><span class="True">       5:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0VUVVBfTk9ORV8w"><span class="b">SETUP_NONE</span></a>            <span class="c">0</span>
<a name="6" /><span class="True">       6:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0VUVVBfRTgyMF9FWFRfMA__"><span class="b">SETUP_E820_EXT</span></a>            <span class="c">1</span>
<a name="7" /><span class="True">       7:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0VUVVBfRFRCXzA_"><span class="b">SETUP_DTB</span></a>            <span class="c">2</span>
<a name="8" /><span class="True">       8:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_U0VUVVBfUENJXzA_"><span class="b">SETUP_PCI</span></a>            <span class="c">3</span>
<a name="9" /><span class="True">       9:</span> 
<a name="10" /><span class="True">      10:</span> <span class="k">/* ram_size flags */</span>
<a name="11" /><span class="True">      11:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UkFNRElTS19JTUFHRV9TVEFSVF9NQVNLXzA_"><span class="b">RAMDISK_IMAGE_START_MASK</span></a>    <span class="c">0x07FF</span>
<a name="12" /><span class="True">      12:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UkFNRElTS19QUk9NUFRfRkxBR18w"><span class="b">RAMDISK_PROMPT_FLAG</span></a>        <span class="c">0x8000</span>
<a name="13" /><span class="True">      13:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UkFNRElTS19MT0FEX0ZMQUdfMA__"><span class="b">RAMDISK_LOAD_FLAG</span></a>        <span class="c">0x4000</span>
<a name="14" /><span class="True">      14:</span> 
<a name="15" /><span class="True">      15:</span> <span class="k">/* loadflags */</span>
<a name="16" /><span class="True">      16:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_TE9BREVEX0hJR0hfMA__"><span class="b">LOADED_HIGH</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">0</span><span class="f">)</span>
<a name="17" /><span class="True">      17:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UVVJRVRfRkxBR18w"><span class="b">QUIET_FLAG</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">5</span><span class="f">)</span>
<a name="18" /><span class="True">      18:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_S0VFUF9TRUdNRU5UU18w"><span class="b">KEEP_SEGMENTS</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">6</span><span class="f">)</span>
<a name="19" /><span class="True">      19:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_Q0FOX1VTRV9IRUFQXzA_"><span class="b">CAN_USE_HEAP</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">7</span><span class="f">)</span>
<a name="20" /><span class="True">      20:</span> 
<a name="21" /><span class="True">      21:</span> <span class="k">/* xloadflags */</span>
<a name="22" /><span class="True">      22:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_WExGX0tFUk5FTF82NF8w"><span class="b">XLF_KERNEL_64</span></a>            <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">0</span><span class="f">)</span>
<a name="23" /><span class="True">      23:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_WExGX0NBTl9CRV9MT0FERURfQUJPVkVfNEdfMA__"><span class="b">XLF_CAN_BE_LOADED_ABOVE_4G</span></a>    <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">1</span><span class="f">)</span>
<a name="24" /><span class="True">      24:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_WExGX0VGSV9IQU5ET1ZFUl8zMl8w"><span class="b">XLF_EFI_HANDOVER_32</span></a>        <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">2</span><span class="f">)</span>
<a name="25" /><span class="True">      25:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_WExGX0VGSV9IQU5ET1ZFUl82NF8w"><span class="b">XLF_EFI_HANDOVER_64</span></a>        <span class="f">(</span><span class="c">1</span><span class="f">&lt;&lt;</span><span class="c">3</span><span class="f">)</span>
<a name="26" /><span class="True">      26:</span> 
<a name="27" /><span class="True">      27:</span> <span class="f">#</span><span class="n">ifndef</span> <span class="b">__ASSEMBLY__</span>
<a name="28" /><span class="True">      28:</span> 
<a name="29" /><span class="True">      29:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="30" /><span class="True">      30:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">screen_info</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="31" /><span class="True">      31:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">apm_bios</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="32" /><span class="True">      32:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">edd</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="33" /><span class="True">      33:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="m">asm</span><span class="f">/</span><span class="b">e820</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="34" /><span class="True">      34:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="m">asm</span><span class="f">/</span><span class="b">ist</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="35" /><span class="True">      35:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">video</span><span class="f">/</span><span class="b">edid</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="36" /><span class="True">      36:</span> 
<a name="37" /><span class="True">      37:</span> <span class="k">/* extensible setup data list node */</span>
<a name="38" /><span class="True">      38:</span> <span class="m">struct</span> <span class="b">setup_data</span> <span class="f">{</span>
<a name="39" /><span class="True">      39:</span>     <span class="b">__u64</span> <span class="b">next</span><span class="f">;</span>
<a name="40" /><span class="True">      40:</span>     <span class="b">__u32</span> <span class="b">type</span><span class="f">;</span>
<a name="41" /><span class="True">      41:</span>     <span class="b">__u32</span> <span class="b">len</span><span class="f">;</span>
<a name="42" /><span class="True">      42:</span>     <span class="b">__u8</span> <span class="b">data</span><span class="f">[</span><span class="c">0</span><span class="f">]</span><span class="f">;</span>
<a name="43" /><span class="True">      43:</span> <span class="f">}</span><span class="f">;</span>
<a name="44" /><span class="True">      44:</span> 
<a name="45" /><span class="True">      45:</span> <span class="m">struct</span> <span class="b">setup_header</span> <span class="f">{</span>
<a name="46" /><span class="True">      46:</span>     <span class="b">__u8</span>    <span class="b">setup_sects</span><span class="f">;</span>
<a name="47" /><span class="True">      47:</span>     <span class="b">__u16</span>    <span class="b">root_flags</span><span class="f">;</span>
<a name="48" /><span class="True">      48:</span>     <span class="b">__u32</span>    <span class="b">syssize</span><span class="f">;</span>
<a name="49" /><span class="True">      49:</span>     <span class="b">__u16</span>    <span class="b">ram_size</span><span class="f">;</span>
<a name="50" /><span class="True">      50:</span>     <span class="b">__u16</span>    <span class="b">vid_mode</span><span class="f">;</span>
<a name="51" /><span class="True">      51:</span>     <span class="b">__u16</span>    <span class="b">root_dev</span><span class="f">;</span>
<a name="52" /><span class="True">      52:</span>     <span class="b">__u16</span>    <span class="b">boot_flag</span><span class="f">;</span>
<a name="53" /><span class="True">      53:</span>     <span class="b">__u16</span>    <span class="b">jump</span><span class="f">;</span>
<a name="54" /><span class="True">      54:</span>     <span class="b">__u32</span>    <span class="b">header</span><span class="f">;</span>
<a name="55" /><span class="True">      55:</span>     <span class="b">__u16</span>    <span class="b">version</span><span class="f">;</span>
<a name="56" /><span class="True">      56:</span>     <span class="b">__u32</span>    <span class="b">realmode_swtch</span><span class="f">;</span>
<a name="57" /><span class="True">      57:</span>     <span class="b">__u16</span>    <span class="b">start_sys</span><span class="f">;</span>
<a name="58" /><span class="True">      58:</span>     <span class="b">__u16</span>    <span class="b">kernel_version</span><span class="f">;</span>
<a name="59" /><span class="True">      59:</span>     <span class="b">__u8</span>    <span class="b">type_of_loader</span><span class="f">;</span>
<a name="60" /><span class="True">      60:</span>     <span class="b">__u8</span>    <span class="b">loadflags</span><span class="f">;</span>
<a name="61" /><span class="True">      61:</span>     <span class="b">__u16</span>    <span class="b">setup_move_size</span><span class="f">;</span>
<a name="62" /><span class="True">      62:</span>     <span class="b">__u32</span>    <span class="b">code32_start</span><span class="f">;</span>
<a name="63" /><span class="True">      63:</span>     <span class="b">__u32</span>    <span class="b">ramdisk_image</span><span class="f">;</span>
<a name="64" /><span class="True">      64:</span>     <span class="b">__u32</span>    <span class="b">ramdisk_size</span><span class="f">;</span>
<a name="65" /><span class="True">      65:</span>     <span class="b">__u32</span>    <span class="b">bootsect_kludge</span><span class="f">;</span>
<a name="66" /><span class="True">      66:</span>     <span class="b">__u16</span>    <span class="b">heap_end_ptr</span><span class="f">;</span>
<a name="67" /><span class="True">      67:</span>     <span class="b">__u8</span>    <span class="b">ext_loader_ver</span><span class="f">;</span>
<a name="68" /><span class="True">      68:</span>     <span class="b">__u8</span>    <span class="b">ext_loader_type</span><span class="f">;</span>
<a name="69" /><span class="True">      69:</span>     <span class="b">__u32</span>    <span class="b">cmd_line_ptr</span><span class="f">;</span>
<a name="70" /><span class="True">      70:</span>     <span class="b">__u32</span>    <span class="b">initrd_addr_max</span><span class="f">;</span>
<a name="71" /><span class="True">      71:</span>     <span class="b">__u32</span>    <span class="b">kernel_alignment</span><span class="f">;</span>
<a name="72" /><span class="True">      72:</span>     <span class="b">__u8</span>    <span class="b">relocatable_kernel</span><span class="f">;</span>
<a name="73" /><span class="True">      73:</span>     <span class="b">__u8</span>    <span class="b">min_alignment</span><span class="f">;</span>
<a name="74" /><span class="True">      74:</span>     <span class="b">__u16</span>    <span class="b">xloadflags</span><span class="f">;</span>
<a name="75" /><span class="True">      75:</span>     <span class="b">__u32</span>    <span class="b">cmdline_size</span><span class="f">;</span>
<a name="76" /><span class="True">      76:</span>     <span class="b">__u32</span>    <span class="b">hardware_subarch</span><span class="f">;</span>
<a name="77" /><span class="True">      77:</span>     <span class="b">__u64</span>    <span class="b">hardware_subarch_data</span><span class="f">;</span>
<a name="78" /><span class="True">      78:</span>     <span class="b">__u32</span>    <span class="b">payload_offset</span><span class="f">;</span>
<a name="79" /><span class="True">      79:</span>     <span class="b">__u32</span>    <span class="b">payload_length</span><span class="f">;</span>
<a name="80" /><span class="True">      80:</span>     <span class="b">__u64</span>    <span class="b">setup_data</span><span class="f">;</span>
<a name="81" /><span class="True">      81:</span>     <span class="b">__u64</span>    <span class="b">pref_address</span><span class="f">;</span>
<a name="82" /><span class="True">      82:</span>     <span class="b">__u32</span>    <span class="b">init_size</span><span class="f">;</span>
<a name="83" /><span class="True">      83:</span>     <span class="b">__u32</span>    <span class="b">handover_offset</span><span class="f">;</span>
<a name="84" /><span class="True">      84:</span> <span class="f">}</span> <span class="b">__attribute__</span><span class="f">(</span><span class="f">(</span><span class="b">packed</span><span class="f">)</span><span class="f">)</span><span class="f">;</span>
<a name="85" /><span class="True">      85:</span> 
<a name="86" /><span class="True">      86:</span> <span class="m">struct</span> <span class="b">sys_desc_table</span> <span class="f">{</span>
<a name="87" /><span class="True">      87:</span>     <span class="b">__u16</span> <span class="b">length</span><span class="f">;</span>
<a name="88" /><span class="True">      88:</span>     <span class="b">__u8</span>  <span class="b">table</span><span class="f">[</span><span class="c">14</span><span class="f">]</span><span class="f">;</span>
<a name="89" /><span class="True">      89:</span> <span class="f">}</span><span class="f">;</span>
<a name="90" /><span class="True">      90:</span> 
<a name="91" /><span class="True">      91:</span> <span class="k">/* Gleaned from OFW&apos;s set-parameters in cpu/x86/pc/linux.fth */</span>
<a name="92" /><span class="True">      92:</span> <span class="m">struct</span> <span class="b">olpc_ofw_header</span> <span class="f">{</span>
<a name="93" /><span class="True">      93:</span>     <span class="b">__u32</span> <span class="b">ofw_magic</span><span class="f">;</span>    <span class="k">/* OFW signature */</span>
<a name="94" /><span class="True">      94:</span>     <span class="b">__u32</span> <span class="b">ofw_version</span><span class="f">;</span>
<a name="95" /><span class="True">      95:</span>     <span class="b">__u32</span> <span class="b">cif_handler</span><span class="f">;</span>    <span class="k">/* callback into OFW */</span>
<a name="96" /><span class="True">      96:</span>     <span class="b">__u32</span> <span class="b">irq_desc_table</span><span class="f">;</span>
<a name="97" /><span class="True">      97:</span> <span class="f">}</span> <span class="b">__attribute__</span><span class="f">(</span><span class="f">(</span><span class="b">packed</span><span class="f">)</span><span class="f">)</span><span class="f">;</span>
<a name="98" /><span class="True">      98:</span> 
<a name="99" /><span class="True">      99:</span> <span class="m">struct</span> <span class="b">efi_info</span> <span class="f">{</span>
<a name="100" /><span class="True">     100:</span>     <span class="b">__u32</span> <span class="b">efi_loader_signature</span><span class="f">;</span>
<a name="101" /><span class="True">     101:</span>     <span class="b">__u32</span> <span class="b">efi_systab</span><span class="f">;</span>
<a name="102" /><span class="True">     102:</span>     <span class="b">__u32</span> <span class="b">efi_memdesc_size</span><span class="f">;</span>
<a name="103" /><span class="True">     103:</span>     <span class="b">__u32</span> <span class="b">efi_memdesc_version</span><span class="f">;</span>
<a name="104" /><span class="True">     104:</span>     <span class="b">__u32</span> <span class="b">efi_memmap</span><span class="f">;</span>
<a name="105" /><span class="True">     105:</span>     <span class="b">__u32</span> <span class="b">efi_memmap_size</span><span class="f">;</span>
<a name="106" /><span class="True">     106:</span>     <span class="b">__u32</span> <span class="b">efi_systab_hi</span><span class="f">;</span>
<a name="107" /><span class="True">     107:</span>     <span class="b">__u32</span> <span class="b">efi_memmap_hi</span><span class="f">;</span>
<a name="108" /><span class="True">     108:</span> <span class="f">}</span><span class="f">;</span>
<a name="109" /><span class="True">     109:</span> 
<a name="110" /><span class="True">     110:</span> <span class="k">/* The so-called &quot;zeropage&quot; */</span>
<a name="111" /><span class="True">     111:</span> <span class="m">struct</span> <span class="b">boot_params</span> <span class="f">{</span>
<a name="112" /><span class="True">     112:</span>     <span class="m">struct</span> <span class="b">screen_info</span> <span class="b">screen_info</span><span class="f">;</span>            <span class="k">/* 0x000 */</span>
<a name="113" /><span class="True">     113:</span>     <span class="m">struct</span> <span class="b">apm_bios_info</span> <span class="b">apm_bios_info</span><span class="f">;</span>        <span class="k">/* 0x040 */</span>
<a name="114" /><span class="True">     114:</span>     <span class="b">__u8</span>  <span class="b">_pad2</span><span class="f">[</span><span class="c">4</span><span class="f">]</span><span class="f">;</span>                    <span class="k">/* 0x054 */</span>
<a name="115" /><span class="True">     115:</span>     <span class="b">__u64</span>  <span class="b">tboot_addr</span><span class="f">;</span>                <span class="k">/* 0x058 */</span>
<a name="116" /><span class="True">     116:</span>     <span class="m">struct</span> <span class="b">ist_info</span> <span class="b">ist_info</span><span class="f">;</span>            <span class="k">/* 0x060 */</span>
<a name="117" /><span class="True">     117:</span>     <span class="b">__u8</span>  <span class="b">_pad3</span><span class="f">[</span><span class="c">16</span><span class="f">]</span><span class="f">;</span>                <span class="k">/* 0x070 */</span>
<a name="118" /><span class="True">     118:</span>     <span class="b">__u8</span>  <span class="b">hd0_info</span><span class="f">[</span><span class="c">16</span><span class="f">]</span><span class="f">;</span>    <span class="k">/* obsolete! */</span>        <span class="k">/* 0x080 */</span>
<a name="119" /><span class="True">     119:</span>     <span class="b">__u8</span>  <span class="b">hd1_info</span><span class="f">[</span><span class="c">16</span><span class="f">]</span><span class="f">;</span>    <span class="k">/* obsolete! */</span>        <span class="k">/* 0x090 */</span>
<a name="120" /><span class="True">     120:</span>     <span class="m">struct</span> <span class="b">sys_desc_table</span> <span class="b">sys_desc_table</span><span class="f">;</span>        <span class="k">/* 0x0a0 */</span>
<a name="121" /><span class="True">     121:</span>     <span class="m">struct</span> <span class="b">olpc_ofw_header</span> <span class="b">olpc_ofw_header</span><span class="f">;</span>        <span class="k">/* 0x0b0 */</span>
<a name="122" /><span class="True">     122:</span>     <span class="b">__u32</span> <span class="b">ext_ramdisk_image</span><span class="f">;</span>            <span class="k">/* 0x0c0 */</span>
<a name="123" /><span class="True">     123:</span>     <span class="b">__u32</span> <span class="b">ext_ramdisk_size</span><span class="f">;</span>                <span class="k">/* 0x0c4 */</span>
<a name="124" /><span class="True">     124:</span>     <span class="b">__u32</span> <span class="b">ext_cmd_line_ptr</span><span class="f">;</span>                <span class="k">/* 0x0c8 */</span>
<a name="125" /><span class="True">     125:</span>     <span class="b">__u8</span>  <span class="b">_pad4</span><span class="f">[</span><span class="c">116</span><span class="f">]</span><span class="f">;</span>                <span class="k">/* 0x0cc */</span>
<a name="126" /><span class="True">     126:</span>     <span class="m">struct</span> <span class="b">edid_info</span> <span class="b">edid_info</span><span class="f">;</span>            <span class="k">/* 0x140 */</span>
<a name="127" /><span class="True">     127:</span>     <span class="m">struct</span> <span class="b">efi_info</span> <span class="b">efi_info</span><span class="f">;</span>            <span class="k">/* 0x1c0 */</span>
<a name="128" /><span class="True">     128:</span>     <span class="b">__u32</span> <span class="b">alt_mem_k</span><span class="f">;</span>                <span class="k">/* 0x1e0 */</span>
<a name="129" /><span class="True">     129:</span>     <span class="b">__u32</span> <span class="b">scratch</span><span class="f">;</span>        <span class="k">/* Scratch field! */</span>    <span class="k">/* 0x1e4 */</span>
<a name="130" /><span class="True">     130:</span>     <span class="b">__u8</span>  <span class="b">e820_entries</span><span class="f">;</span>                <span class="k">/* 0x1e8 */</span>
<a name="131" /><span class="True">     131:</span>     <span class="b">__u8</span>  <span class="b">eddbuf_entries</span><span class="f">;</span>                <span class="k">/* 0x1e9 */</span>
<a name="132" /><span class="True">     132:</span>     <span class="b">__u8</span>  <span class="b">edd_mbr_sig_buf_entries</span><span class="f">;</span>            <span class="k">/* 0x1ea */</span>
<a name="133" /><span class="True">     133:</span>     <span class="b">__u8</span>  <span class="b">kbd_status</span><span class="f">;</span>                <span class="k">/* 0x1eb */</span>
<a name="134" /><span class="True">     134:</span>     <span class="b">__u8</span>  <span class="b">_pad5</span><span class="f">[</span><span class="c">3</span><span class="f">]</span><span class="f">;</span>                    <span class="k">/* 0x1ec */</span>
<a name="135" /><span class="True">     135:</span>     <span class="k">/*</span>
<a name="136" /><span class="True">     136:</span> <span class="k">     * The sentinel is set to a nonzero value (0xff) in header.S.</span>
<a name="137" /><span class="True">     137:</span> <span class="k">     *</span>
<a name="138" /><span class="True">     138:</span> <span class="k">     * A bootloader is supposed to only take setup_header and put</span>
<a name="139" /><span class="True">     139:</span> <span class="k">     * it into a clean boot_params buffer. If it turns out that</span>
<a name="140" /><span class="True">     140:</span> <span class="k">     * it is clumsy or too generous with the buffer, it most</span>
<a name="141" /><span class="True">     141:</span> <span class="k">     * probably will pick up the sentinel variable too. The fact</span>
<a name="142" /><span class="True">     142:</span> <span class="k">     * that this variable then is still 0xff will let kernel</span>
<a name="143" /><span class="True">     143:</span> <span class="k">     * know that some variables in boot_params are invalid and</span>
<a name="144" /><span class="True">     144:</span> <span class="k">     * kernel should zero out certain portions of boot_params.</span>
<a name="145" /><span class="True">     145:</span> <span class="k">     */</span>
<a name="146" /><span class="True">     146:</span>     <span class="b">__u8</span>  <span class="b">sentinel</span><span class="f">;</span>                    <span class="k">/* 0x1ef */</span>
<a name="147" /><span class="True">     147:</span>     <span class="b">__u8</span>  <span class="b">_pad6</span><span class="f">[</span><span class="c">1</span><span class="f">]</span><span class="f">;</span>                    <span class="k">/* 0x1f0 */</span>
<a name="148" /><span class="True">     148:</span>     <span class="m">struct</span> <span class="b">setup_header</span> <span class="b">hdr</span><span class="f">;</span>    <span class="k">/* setup header */</span>    <span class="k">/* 0x1f1 */</span>
<a name="149" /><span class="True">     149:</span>     <span class="b">__u8</span>  <span class="b">_pad7</span><span class="f">[</span><span class="c">0x290</span><span class="f">-</span><span class="c">0x1f1</span><span class="f">-</span><span class="m">sizeof</span><span class="f">(</span><span class="m">struct</span> <span class="b">setup_header</span><span class="f">)</span><span class="f">]</span><span class="f">;</span>
<a name="150" /><span class="True">     150:</span>     <span class="b">__u32</span> <span class="b">edd_mbr_sig_buffer</span><span class="f">[</span><a href="cpu.c_macros_ref.html#_RUREX01CUl9TSUdfTUFYXzA_"><span class="b">EDD_MBR_SIG_MAX</span></a><span class="f">]</span><span class="f">;</span>    <span class="k">/* 0x290 */</span>
<a name="151" /><span class="True">     151:</span>     <span class="m">struct</span> <span class="b">e820entry</span> <span class="b">e820_map</span><span class="f">[</span><a href="cpu.c_macros_ref.html#_RTgyME1BWF8w"><span class="b">E820MAX</span></a><span class="f">]</span><span class="f">;</span>        <span class="k">/* 0x2d0 */</span>
<a name="152" /><span class="True">     152:</span>     <span class="b">__u8</span>  <span class="b">_pad8</span><span class="f">[</span><span class="c">48</span><span class="f">]</span><span class="f">;</span>                <span class="k">/* 0xcd0 */</span>
<a name="153" /><span class="True">     153:</span>     <span class="m">struct</span> <span class="b">edd_info</span> <span class="b">eddbuf</span><span class="f">[</span><a href="cpu.c_macros_ref.html#_RURETUFYTlJfMA__"><span class="b">EDDMAXNR</span></a><span class="f">]</span><span class="f">;</span>        <span class="k">/* 0xd00 */</span>
<a name="154" /><span class="True">     154:</span>     <span class="b">__u8</span>  <span class="b">_pad9</span><span class="f">[</span><span class="c">276</span><span class="f">]</span><span class="f">;</span>                <span class="k">/* 0xeec */</span>
<a name="155" /><span class="True">     155:</span> <span class="f">}</span> <span class="b">__attribute__</span><span class="f">(</span><span class="f">(</span><span class="b">packed</span><span class="f">)</span><span class="f">)</span><span class="f">;</span>
<a name="156" /><span class="True">     156:</span> 
<a name="157" /><span class="True">     157:</span> <span class="m">enum</span> <span class="f">{</span>
<a name="158" /><span class="True">     158:</span>     <span class="b">X86_SUBARCH_PC</span> <span class="f">=</span> <span class="c">0</span><span class="f">,</span>
<a name="159" /><span class="True">     159:</span>     <span class="b">X86_SUBARCH_LGUEST</span><span class="f">,</span>
<a name="160" /><span class="True">     160:</span>     <span class="b">X86_SUBARCH_XEN</span><span class="f">,</span>
<a name="161" /><span class="True">     161:</span>     <span class="b">X86_SUBARCH_INTEL_MID</span><span class="f">,</span>
<a name="162" /><span class="True">     162:</span>     <span class="b">X86_SUBARCH_CE4100</span><span class="f">,</span>
<a name="163" /><span class="True">     163:</span>     <span class="b">X86_NR_SUBARCHS</span><span class="f">,</span>
<a name="164" /><span class="True">     164:</span> <span class="f">}</span><span class="f">;</span>
<a name="165" /><span class="True">     165:</span> 
<a name="166" /><span class="True">     166:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* __ASSEMBLY__ */</span>
<a name="167" /><span class="True">     167:</span> 
<a name="168" /><span class="True">     168:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* _ASM_X86_BOOTPARAM_H */</span>
<a name="169" /><span class="True">     169:</span> </pre>
  </body>
</html>
